home *** CD-ROM | disk | FTP | other *** search
/ SPACE 1 / SPACE - Library 1 - Volume 1.iso / program / 441 / dlibs12 / gets.c < prev    next >
C/C++ Source or Header  |  1990-11-23  |  343b  |  22 lines

  1. #include <stdio.h>
  2.  
  3. char *gets(data)
  4.     register char *data;
  5.     {
  6.     register char *p = data;
  7.     register int c;
  8.  
  9.     while(((c = fgetc(stdin)) != EOF) && (c != '\n'))
  10.         {
  11.         if(c == '\b')
  12.             {
  13.             if(p > data)
  14.                 --p;
  15.             }
  16.         else
  17.             *p++ = c;
  18.         }
  19.     *p = '\0';
  20.     return(((c == EOF) && (p == data)) ? NULL : data);  /* NULL == EOF */
  21.     }
  22.